package com.base.web.model.master.auth;

import javax.persistence.Column;
import javax.persistence.Id;
import java.util.Date;

public class Role {
    /**
     * 主键
     */
    @Id
    private String id;

    /**
     * 角色名称
     */
    private String name;

    /**
     * 备注
     */
    private String note;

    /**
     * 角色状态 1=正常(启用) 0=删除 2=停用
     */
    private String status;

    /**
     * 创建操作人
     */
    @Column(name = "create_user")
    private String createUser;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 更新操作人
     */
    @Column(name = "update_user")
    private String updateUser;

    /**
     * 更新时间
     */
    @Column(name = "update_time")
    private Date updateTime;

    public Role() {
    }

    public Role(String status) {
        this.status = status;
    }

    /**
     * 获取主键
     *
     * @return id - 主键
     */
    public String getId() {
        return id;
    }

    /**
     * 设置主键
     *
     * @param id 主键
     */
    public void setId(String id) {
        this.id = id == null ? null : id.trim();
    }

    /**
     * 获取角色名称
     *
     * @return name - 角色名称
     */
    public String getName() {
        return name;
    }

    /**
     * 设置角色名称
     *
     * @param name 角色名称
     */
    public void setName(String name) {
        this.name = name == null ? null : name.trim();
    }

    /**
     * 获取备注
     *
     * @return note - 备注
     */
    public String getNote() {
        return note;
    }

    /**
     * 设置备注
     *
     * @param note 备注
     */
    public void setNote(String note) {
        this.note = note == null ? null : note.trim();
    }

    /**
     * 获取角色状态 1=正常(启用) 0=删除 2=停用
     *
     * @return status - 角色状态 1=正常(启用) 0=删除 2=停用
     */
    public String getStatus() {
        return status;
    }

    /**
     * 设置角色状态 1=正常(启用) 0=删除 2=停用
     *
     * @param status 角色状态 1=正常(启用) 0=删除 2=停用
     */
    public void setStatus(String status) {
        this.status = status == null ? null : status.trim();
    }

    /**
     * 获取创建操作人
     *
     * @return create_user - 创建操作人
     */
    public String getCreateUser() {
        return createUser;
    }

    /**
     * 设置创建操作人
     *
     * @param createUser 创建操作人
     */
    public void setCreateUser(String createUser) {
        this.createUser = createUser == null ? null : createUser.trim();
    }

    /**
     * 获取创建时间
     *
     * @return create_time - 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取更新操作人
     *
     * @return update_user - 更新操作人
     */
    public String getUpdateUser() {
        return updateUser;
    }

    /**
     * 设置更新操作人
     *
     * @param updateUser 更新操作人
     */
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser == null ? null : updateUser.trim();
    }

    /**
     * 获取更新时间
     *
     * @return update_time - 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置更新时间
     *
     * @param updateTime 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 默认查询条件
     * @return
     */
    public static Role defaultCondition(String status){
        return new Role(status);
    }
}